﻿

using LIMS.Entities;
namespace LIMS.DataAccess
{
    /// <summary>
    /// Provides an interface for retrieving DAO objects
    /// </summary>
    public interface IDaoFactory
    {        
        IUserDao GetUserDao();
        IGroupDAO GetGroupDao();
        IUserGroupLinkDAO GetUserGroupLinkDAO();
        IGroupPermissionLinkDao GetGroupPermissionLinkDao();
        ISiteDAO GetSiteDAO();
        IPlantDAO GetPlantDAO();
        IDepartmentDAO GetDepartmentDAO();
        IHeadDAO GetHeadDAO();
        IProductDAO GetProductDAO();
        IAuditTrailDAO GetAuditTrailDAO();
        IUserTypePermissionDAO GetUserTypePermissionDAO();

        IProductHistoryDAO GetProductHistoryDAO();
        ISupplierDAO GetSupplierDAO();
        IManufacturersDAO GetManufacturersDAO();
    }
}
